home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Surfer 2.0
/
Internet Surfer 2.0 (Wayzata Technology) (1996).iso
/
pc
/
text
/
mac
/
faqs.110
< prev
next >
Wrap
Text File
|
1996-02-12
|
28KB
|
717 lines
Frequently Asked Questions (FAQS);faqs.110
These patches are available for Ultrix 4.2 and 4.2A, and for both RISC
and VAX. They must not be applied to previous versions of Ultrix.
Finally, note you must install new versions of BOTH net_common.o
and pfilt.o; you cannot just install one of the files.
/sys/{MIPS,VAX}/BINARY/net_common.o
/sys/{MIPS,VAX}/BINARY/pfilt.o
-----------------------------------
(v4.2 RISC & VAX, v4.2a RISC)
Listed are problem resolved by these 2 patches:
1. PACKET FILTER FAILS TO RECEIVE UNICASTS TO LOCAL HOST
The packet filter mechanism is supposed to allow a user application
to receive packets that are sent to the local host, if no other
protocol in the kernel wants to use the packet. This worked fine
in Ultrix 4.0 and 4.1, but in Ultrix 4.2 it is broken.
Apparently, setting "copyall" with ifconfig is a workaround, but
this is an EXTREMELY inefficient workaround, and requires users
to reconfigure their systems as super-user.
2. PACKET FILTER IOCTL EIOCDEVP RETURNS WRONG MTU VALUE
A change was made to increase the size for ethernet packets
from 1500 bytes to 1514 bytes which is the MAX size for the ethernet.
This will allow 1500 bytes for the message and 14 bytes for the header.
Also corrected the value returned in endevp.end_MTU by the EIOCDEVP ioctl.
3. 802.3/802.2 PACKETS NOT PROPERLY DELIVERED TO PACKET FILTER
The packet filter is defined, in its manual page, to provide packets
to user applications exactly as those packets appear on the network.
The current kernel code mangles the headers of 802.2 encapsulations
of Ethernet packets, causing several popular applications to fail.
[Jeff Mogul, mogul@pa.dec.com]
==============================================
N3. OK, I've done all that and CAP still doesn't run.
[See the previous topic for information on relevant patches for ULTRIX.]
There are several bugs in the Ultrix 4.2 packet filter mechanism, both
of which affect CAP. The details are complex, but you can solve one
of them by doing (as super-user, probably from /etc/rc.local)
/etc/ifconfig ln0 copyall
(substitute whatever interface type you are using for "ln0"). The
other bug, which apparently only affects CAP when "Phase 2" is in use,
requires a patch to CAP. CAP patches are available from a number of
archive sites, including gatekeeper.dec.com: in the directory named
/pub/net/appletalk/cap/cap.patches
Another problem you may have is that some Ethernet interfaces sold for
the Macintosh occasionally send incorrect 802.3 packet headers. (The
bug is that they send a packet whose length does not match the value
provided in the 802.3 header's length field. Ultrix 4.2, as well as
some of Digital's Ethernet interface hardware, is strict about
checking 802.3 header, and does not accept these packets.) As of this
writing, a patch is not yet available and there is no workaround. If
you can, you should try to get the vendor of the nonconforming
interface to provide a solution.
Once you have obtained an up-to-date, fully patched copy of CAP 6.0,
the Configure script does not automatically switch on the workaround
code; you must manually edit the m4.setup file to turn the workaround
code on.
[Jeff Mogul, mogul@pa.dec.com]
==============================================
N4. I want to run the "screend" program but I get "Operation not supported
on socket".
By default, support for screend is not configured into the Ultrix 4.2
kernel, and the documentation for this is missing. Edit your kernel
configuration file to include the line:
pseudo-device gwscreen
and rebuild your kernel (i.e., run /etc/config, then change to the
right directory and do "make depend" and then "make"). Install the
new kernel and reboot the system.
[Jeff Mogul, mogul@pa.dec.com]
==============================================
N5. I want to use screend but I'm not sure how to set up the
/etc/screend.conf configuration file.
Get a copy of NSL Network Note NN-16, "Using screend to Implement
IP/TCP Security Policies". Send mail with "Subject: help" for
information on how to order this, or just "Subject: send postscript
nn-16" if you want to receive the PostScript file via return mail to
nsl-techreports@pa.dec.com
or ...!uunet!decwrl!nsl-techreports
[Jeff Mogul, mogul@pa.dec.com]
==============================================
N6. Why can't ULTRIX 4.2 mount NFS filesystems that could be mounted with
ULTRIX 4.1?
The version of SUN RPC shipped with ULTRIX V4.2 supports up to 32
groups per user, whereas previous versions supported 8 groups per
user. Users that are members of more than 8 groups cannot NFS mount
file systems from NFS servers using the version of SUN RPC that only
supports 8 groups.
The error message that nfs_mount will give you if you are in too many
groups will look like this:
nfs_mount: crltrx:/usr/local server not responding: RPC: Authentication error;
why = Invalid client credential
nfs_mount: access denied for crltrx:/usr/local
The workaround is to reduce the number of groups you are a member of
to eight or less to make NFS mounts work again. In particular, you should
check the number of groups that "root" is in.
==============================================
N7. How do I change the IP address of a diskless client?
To change the IP address of a diskless client, first change it in
whatever hosts database you use (BIND, /etc/hosts, or YP). There is
also a file in the client's /etc directory called netblk.c. It looks like
this:
#include <sas/mop.h>
struct netblk nblk={
"server",
0x100b002a, "client", 0x100b003e, 0x100b00ff, 0xffffff00,
0,
5,
0,
0,
"/dlclient0/client.root",
"rz3b",
""
};
The various fields of the structure are defined in /usr/include/sas/mop.h.
Change the client's address (expressed here as a 32-bit integer), and
compile netblk.c using 'cc -c netblk.c'.
The netmask and the broadcast address can also be changed here.
==============================================
N8. Is ONC RPC (formerly "Sun RPC") supported under ULTRIX - and what should I
do to port my existing applications that rely on it?
ONC RPC (formerly "Sun RPC") is not supported under ULTRIX. This means
that not only may some library routines like "clnt_create" not exist,
but that if they do, they may not work as expected. If you need to use
RPC for an application can use the unsupported version of the RPC4.0
distribution that is available for FTP from crl.dec.com and
decuac.dec.com in pub/sources/rpc4.0-ultrix.tar.Z.
ONC RPC will be a supported component of Digital's OSF/1 product.
==============================================
N9. How can I disable forwarding of IP packets on an ULTRIX system with two
network interfaces?
Put this in rc.local:
echo -n 'disabling kernel routing: ipforwarding ' >/dev/console
/usr/etc/kvar -k -wl -s ipforwarding -v 0 /vmunix >/dev/console
==============================================
N10. How can I run network daemons from inetd as users other than root? **NEW**
inetd will take a username as the fifth field. This is not documented
on the inetd manual page. For example:
finger stream tcp nowait nobody /usr/etc/fingerd fingerd
==============================================
N11. How do I decode "stale filehandle" messages from NFS? **NEW**
In the message
NFS server: stale file handle _fs(21,154) file 4100
21 and 154 are the major and minor device numbers. 4100 is the inode number.
Running 'ls -l' on /dev will show the device numbers, so you can ask
mount what directory the filesystem is mounted on. Then use
find <file system> -inum <inode no> -print
to find the file.
[Peter Mayne, pjdm@chmeee.enet.dec.com]
[Greg Shapiro, gshapiro@monkeyboy.WPI.EDU]
******************** Disk ***************************************
==============================================
D1. Why doesn't ULTRIX 4.1 work with disks bigger than 1.2GBytes?
There is a bug in the V4.1 SCSI driver that will only allow it to read
something like (2 ** 21) or (2 ** 20) LBNs. After that it wraps
around to the beginning of the disk. It is fixed in V4.2.
==============================================
D2. Where can I get a disktab entry for the XXX disk?
A collection of contributed disktab entries is in
/pub/DEC/ultrix-disktabs on the usual archive machines. Get a copy of
the file for an up-to-date list.
==============================================
******************** Programming ***************************************
P1. What does "unaligned access" mean, and how can I fix it?
Unaligned accesses typically come up when programs use malloc(3) or
other memory allocation routines in atypical ways, or when programs do
certain (hazardous) kinds of type casts.
malloc(3) returns data aligned to the most restrictive alignment (8
byte boundaries on MIPS machines). If you are writing your own
malloc wrapper (say to add a reference count) and you write code like
this:
char *mymalloc(int size)
{
short *newmem;
newmem = (short *) malloc(size + sizeof(short));
*newmem = 1; /* initialize reference count */
return (char *) (newmem + 1);
}
you are then returning a pointer that is no longer 8-byte aligned. Now, code
like
int *i;
i = (int *) mymalloc(sizeof(int));
*i = 10;
will generate unaligned access messages whenever *i is used.
An example of dangerous casting would be something like
char buffer[100];
int i;
i = (int)*((int *)&buffer[3]);
The program will usually still run correctly, because an exception
handler in the kernel performs an unaligned read. There are some rare
cases, however, where the fixed read yields incorrect results. The
messages are printed by default because one usually wants to know when
a program is generating the unaligned accesses.
Now, if you're only getting a few of these messages, it might not
matter, but if you're getting pages of them (or worse, have turned off
the logger because you were getting so many unaligned access
messages), you might consider correcting your program.
You can use the uac(1) (Unaligned Acces Message Control) command to
turn off the messages.
If you want to find the the problem in the source code, you can use dbx.
Suppose the message is:
Fixed up unaligned data access for pid 2337 (bozo) at pc 0x5ad364
This tells you that the problem occurs in the program "bozo". In dbx,
you would type, for example:
% dbx bozo
(dbx) 0x5ad364/i
*[main:206, 0x0x5ad364] lw r0,40(sp)
dbx prints the offending instruction, along with its location: line 206
in main().
If you need to do unaligned accesses, you might find the following useful:
int unaligned_load_word(int *src);
int unaligned_load_half(short *src);
unsigned int unaligned_load_uhalf(unsigned short *src);
float unaligned_load_float(float *src);
double unaligned_load_double(double *src);
void unaligned_store_word(int *dst,int val);
void unaligned_store_half(short *dst,int val);
void unaligned_store_float(float *dst,float val);
void unaligned_store_double(double *dst,double val);
These unaligned access routines are an unsupported component of the
standard C library on RISC/ULTRIX. They provide for alignment-safe
access to the primitive data types (short,int,float,double). They are
fairly fast as they use the special MIPS unaligned instructions
(LWL,LWR,SWL,SWL) for doing the complicated part of the work.
If you are running ULTRIX 4.2, and you would like to disable the automatic
fixup of unaligned accesses, use:
#include <sys/syscall.h>
#include <sys/sysmips.h>
syscall(SYS_sysmips, MIPS_FIXADE, 0, NULL, NULL, NULL);
The above code fragment will disable address fixups for your process,
and this will be inherited by any children. Where a fixup would have
occured, you will get a SIGBUS.
******************** Laser & Line Printers **************************
==============================================
L1. Where can I get a printcap entry for the XXX printer?
A collection of contributed printcap entries is in
/pub/DEC/ultrix-printcap on the usual archive machines. Get a copy of
the file for an up-to-date list.
******************** Graphics ***************************************
==============================================
G1. Why does the X server use so much memory?
Xws and the other other DEC X servers generally grow larger with
workload, not because of memory leaks. When you start an X server,
its process is quite small. As applications are started, the server
allocates memory for a variety of reasons to service requests from
clients. An example of this is allocating a pixmap. When the
resource is freed, the corresponding memory is freed back to the
malloc pool, but the server image doesn't get any smaller. This is
true of any application where you malloc memory and then free it. If
your workload is consistent, server growth is asymptotic, growing
quickly at first, then tapering off. In other words, if you exit the
application that caused the server to allocate a lot of memory, the
server size won't shrink when the application exits, but the server
won't grow any larger if you run the same application the same way
again.
Of course it's possible that a memory leak in the server still exists.
If you think you have a memory leak, you should figure out which
application you run that triggers the leak. You should run that
application several times, observing the server size with every
iteration. If the server grows by an appreciable amount each time,
please file an SPR.
For workstations with minimal memory, we recommend that you use the
following server command line arguments:
-once (restart the server afresh for each session)
-su (inhibit save unders)
-bs (inhibit backing store)
The -su and -bs flags essentially trade CPU for memory, making
applications work harder in some cases to save server memory. This
tradeoff isn't as bad as it may sound.
[Joel Gringorten, gringort@wsl.dec.com]
==============================================
G2. How can I build an X11R5 server for an ULTRIX 4.1 machine?
The display device drivers changed significantly between ULTRIX 4.1
and ULTRIX 4.2. To build an R5 server on ULTRIX 4.1 system, edit the
Edit the file ultrix.cf in mit/config and #define OSMinorVersion to be
1. This should cause the Xcfbpmax server to be built instead of the
Xdec server. Xdec only runs on ULTRIX 4.2.
==============================================
G3. How do I change or get rid of the Digital logo on the login screen of
my workstation?
To have no logo displayed at all, add this line to /.Xdefaults:
XSessionManager*displayLogo: no
To replace the Digital logo with a different Encapsulated PostScript
image, add the following to /.Xdefaults:
XSessionManager*logoFile: filename
XSessionManager*logoFullScreen: true
Make sure that "filename" is the full path to a PostScript file.
Note that the PostScript should not end with a "showpage" or the page
will print and then disappear with the "new page."
==============================================
G4. How do I run MIT X11 Software?
If you are running with Ultrix 4.2 or later, you should have received
some sort of distribution media with "Unsupported" subsets on it.
Among those subsets are the following:
UDXUNFONTS420 'Unsupported MIT Fonts'
UDXUNMAN420 'Unsupported X11 Reference Pages'
UDXUNMIT420 'Unsupported X11 Components'
These subsets, in total, provide the fonts, manual pages, and clients
from the X11 Release 4 distribution from MIT, with a few minimal
changes to fix problems that cropped up after the MIT release.
If all you want is R4 clients, load the above subsets. These subsets
were built directly from the X Consortium sources and include all of
the public patches. The R4 clients will be installed in /usr/bin/X11;
put that directory in your path in order to access them. An ls on
/usr/bin/X11 will also reveal the names of the applications that are
available.
If you have a previous version of Ultrix, or if you need X11 Release
5, you will have to build from the X Consortium sources yourself.
There are some difficulties associated with building Release 4 from
source on Ultrix versions 4.0 and higher; fortunately, Release 5
corrects these problems, so be sure to start with a fresh Release 5
distribution.
Building from source should be a simple matter of editing the
mit/config/ultrix.cf file and then connecting to the toplevel
directory and typing ``Make World''. If you are running Ultrix 4.2,
you don't need to edit ultrix.cf, but for other versions of Ultrix, be
sure to cd to mit/config and change the OSMinorVersion (and, for
versions of Ultrix prior to 4.0, the OSMajorVersion) number to the
appropriate number for your version of Ultrix.
As mentioned in another FAQ answer, the Xdec server provides
multiscreen capability for colour frame buffers, but features of
Ultrix required to support this capability are not present prior to
Ultrix 4.2; for those versions, the Xcfbpmax server will be built;
this server only supports one display per machine, and only DECstation
2100 and 3100 and DECstation 5000 models running with the CX adapter.
The Xdec server should work on the following systems:
DECstation 2100 Monochrome or Color Workstations
DECstation 3100 Monochrome or Color Workstations
DECstation 5000/1xx CX, MX or HX Single or Multiscreen Workstations
DECstation 5000/2xx CX, MX or HX Single or Multiscreen Workstations
The support for the HX option on the above platforms is limited to
direct frame buffer I/O - the graphics processor present on the HX
board will not be used. This means that performance with the R5
server will be substantially worse than performance with the
DEC-supplied server in most cases. Support for the PX and PXG options
is not present in R5 in any form. Support for the MX exists, but some
problems have been reported when attempting to render non-black,
non-white pixels.
Source to X11 Release Five can be copied across the Internet from
gatekeeper.dec.com (16.1.0.2), crl.dec.com (192.58.206.2), or
export.lcs.mit.edu (18.24.0.12). Other internet archives may also
have full source distributions; asking around on the Usenet newsgroup
comp.windows.x will probably elicit this information.
==============================================
G5. How do I build X software that I got from the net?
If you get source code to an X application from somewhere and want to
build it, here are a few helpful hints:
First, make sure the following subsets are installed:
UDXUNMIT420
UDXUNFONTS420
You may also find the man pages for the previous two subsets
useful. They're in:
UDXUNMAN420
Next, add the following line to the end of /usr/lib/X11/config/site.def
#define StandardIncludes -I/usr/include/mit
If there are any README files with the source code, now is a good time
to read them, and make any changes they suggest.
If you installed the MIT X11 distribution from MIT, rather than the
ULTRIX subsets, your local configuration may be different.
If there is an Imakefile:
If the source code has a file called "Imakefile" at the top of its
directory hierarchy, typing the following in that top-level directory
should build the application:
xmkmf
make Makefiles
make depend
make
To install the application, type
make install
If there isn't an Imakefile:
You might have to edit the Makefile to make the application compile.
If ".h" files (like those for the Athena widget set, "Xaw") are not
being found, adding "-I/usr/include/mit" to the "cc" command(s) in the
Makefile will usually do the trick.
If you are having problems linking, try using "-lXext-mit" and "-lX11-mit"
instead of "-lXext" and "-lX11" in the Makefile.
==============================================
G6. Why do some applications run slowly on the DECstation PX and PXG
displays?
The PX and PXG graphics adapters are designed for high-speed
two-dimensional vector drawing and for high-speed three-dimensional
rotation and polygon fills, respectively. In order to get maximum
performance in these specialized areas, both kinds of adapters have
their own intelligent on-board processor which do high-speed drawing
operations, and in the case of the PXG, a general purpose RISC
processor which does 3D rendering, scaling and rotation.
In order to optimize graphics performance, a tradeoff was made on both
of these boards which prevents your system CPU from directly accessing
display memory. Allowing your system CPU to directly access display
memory would, at a minimum, cut the graphics accelerator performance
by a factor of two, and perhaps more.
Unfortunately, as a result, operations which involve the copying of
large images (Pixmaps) into or out of display memory are performed
much more slowly than they would be if the processor were able to
directly access system memory.
One example of this is the ever-popular background image. The X
server keeps a Pixmap containing the pattern with which to paint the
root window; whenever an area of the root window is exposed, the X
server must copy that portion of the Pixmap over the relatively
low-performance I/O channel to the PX or PXG adapter, which then
copies it into display memory.
As a result, iconifying and deiconifying windows can become a fairly
slow experience, particularly on systems with lower TurboChannel
bandwidth. In this case, the solution is simple; just use the
standard, boring background. However, if an application that you use
actually needs to copy Pixmaps to the screen on a regular basis, you
will definitely experience slow performance; there's no way to fix
this problem.
Unless you need the vector performance of the PX or the 3D rendering
capabilities of the PXG, use one of the several boards DEC produces
which are optimized for windowing and imaging, such as the CX (dumb
colour frame buffer), MX (dumb monochrome frame buffer), HX (smart
colour frame buffer), or TX (imaging colour frame buffer).
******************** Hardware ***************************************
==============================================
H1. What are the pinouts of the MMJ jacks on the back of various DECstations
and VAXstations?
This describes the 6-pin modified modular jack (MMJ) used for serial ports
on various DECstations and VAXstations, as well as on other DEC equipment.
DEC carries four DB-to-MMJ adaptors. They are internally wired as follows
Rdy Out TX+ TX- RX- RX+ Rdy In
Adaptor Gender 1 2 3 4 5 6 Use with:
--------------------------------------------------------------------------
H8575-A F 20 2 7 7 3 6&8 VTxxx terminal
H8571-C M 6 3 7 7 2 20 DEC printer
H8571-D M 6 3 7 7 2 20 Modem
H8571-E M 20 2 7 7 3 6&8 Female terminal
or LaserWriter
--------------------------------------------------------------------------
RS-232 using DB-25 connectors:
DTE DCE
Terminal Modem
or computer
Pin Number Signal Name
2 TD Transmit Data -->
3 RD Receive Data <--
7 GND Ground ---
6 DSR Data Set Ready <--
8 DCD Data Carrier Detect <--
20 DTR Data Terminal Ready -->
==============================================
H2. How do I set the SCSI ID on an RZ25?
Back by the power connector are a row of 3 jumpers. These set the scsi
id. The one closest to the power connector is bit 2, and you install a
jumper to get a "1". The default id is 7, which conflicts with the
controller. Note that the mounting bracket on the drive covers these
jumpers, so they are not immediately obvious.
==============================================
H3. How can I get detailed information on the TURBOchannel?
The TURBOchannel is a 32bit synchronous I/O channel that is currently
used on products in the VAX, MIPS and ALPHA architectures. It is used
in both the workstation and server based systems. Software support for
VMS, Ultrix, and OSF/1 will be provided for the applicable systems
under thos three architectures. For specific product information
contact your local DEC sales person.
Use of the TURBOchannel does not require any license or fees. It is
free to both option and system vendors alike. The documentation that
is provided on-line is available for public use and may be copied, in
its entirety, and distributed freely.
Overview information: There is a postscript presentation available on line at
gatekeeper:pub/DEC/TriAdd/TURBO.ps
/TURBO.ps.Z (compressed file)
The script for the presentation is a postscript file
gatekeeper:pub/DEC/TriAdd/TURBO_README.ps
/TURBO_README.ps (compressed file)
TURBOchannel Specifications: Are available on-line in postscript format for
anonymous ftp at
gatekeeper:pub/DEC/TriAdd/turbo_hw_spec.ps (hardware spec)
/turbo_hw_spec.ps.Z (compressed file)
gatekeeper:pub/DEC/TriAdd/turbo_fw_spec.ps (firmware spec)
/turbo_fw_spec.ps.Z (compressed file)
gatekeeper:pub/DEC/TriAdd/turbo_sys_params.ps (system params)
/turbo_sys_params.ps.Z (compressed)
gatekeeper:pub/DEC/TriAdd/tci_spec05c.ps (ASIC spec)
/tci_spec05c.ps.Z (compressed file)
TURBOchannel Industry Group: The TURBOchannel protocol specifications belong
to an open industry group. The TcIG information
and meeting minutes can be found in the file
gatekeeper:pub/DEC/TriAdd/tcigmeeting.ps (meeting minutes)
/tcigmeeting.ps.Z (compressed file)
TURBOchannel Support: Technical support for TURBOchannel Option and System
developers is available through Digital's TRI/ADD
Program. Membership in Digital's TRI/ADD Program is
free of charge. For more information contact
Digital's TRI/ADD Program 1.800.678.OPEN Canada & US
529 Bryant Ave. PAG-2 1.415.617.3452 Outside North America
Palo Alto, CA 94301-1616 1.415.853.0155 FAX
triadd@decwrl.dec.com
[AJ Casamento, ajc@pa.dec.com]
==============================================
H4. What third-party hardware can I get for the TURBOchannel? **NEW**
There is a postscript version of the TRI/ADD Shippable Products
Catalog available for anonymous FTP at
gatekeeper:pub/DEC/TriAdd/TAcatalog.ps
/TAcatalog.ps.Z (compressed file)
for Asian countries, the file is
gatekeeper:pub/DEC/TriAdd/TA+catalog.ps
/TA+catalog.ps.Z (compressed file)
The catalog contains more than just TURBOchannel based products, but
the TURBOchannel products have a special logo next to them which makes
them easy to identify. An overview list (without product details) of
the catalog is the postscript file
gatekeeper:pub/DEC/TriAdd/shortTAcatalog.ps
/shortTAcatalog.ps.Z (compressed file)
or the text file
gatekeeper:pub/DEC/TriAdd/shortTAcatalog.txt
/shortTAcatalog.txt.Z (compressed)
[AJ Casamento, ajc@pa.dec.com]
==============================================
H5. Can I mix 8-Megabyte and 32-Megabyte boards in the DECstation 5000/xxx
family?
All DS5000 series machines set the memory stride from the first memory
array module (this is true of the Personal DECstation and the
DS5000/1xx series and not just the DS5000/2xx machines). The only
supported configurations are those in which all of the memory array
modules are of the same capacity.
Memory array module types are:
MS01-AA 1Mbit DRAM DS2100,DS3100,PDS5000/20,PDS5000/25,DS5000/120,
DS5000/125,DS5000/133
MS01-CA 4Mbit DRAM PDS5000/20,PDS5000/25,DS5000/120,DS5000/125,
DS5000/133
MS02-AA 1Mbit DRAM DS5000/200,DS5000/240
MS02-CA 4Mbit DRAM DS5000/200,DS5000/240
However, you can place one memory array module of a smaller capacity
at the end of a series of higher capacity modules.
Slot Module